home *** CD-ROM | disk | FTP | other *** search
/ Collection of Internet / Collection of Internet.iso / winprogs / wftpd19c / wftpd.txt < prev   
Encoding:
Text File  |  1994-05-06  |  18.9 KB  |  420 lines

  1. Alun Jones                           WFTPD 1.9 Documentation
  2.  
  3. 1910 Westmead 3702
  4. Houston TX 77077, USA
  5.                             WFTPD
  6.                Windows FTP Daemon Version 1.9
  7.                       For Winsock v1.1
  8. Self-congratulatory Introduction
  9.  
  10. Welcome to WFTPD, and many thanks for caring to read the
  11. documentation.
  12.  
  13. For those of you new to Internet terminology, FTP is a
  14. standard communication protocol to enable file transfer
  15. (hence its name, deriving from File Transfer Protocol).  A
  16. 1Daemon is a program that sits in the background waiting to
  17. serve other applications.  It is commonly also referred to
  18. as a server.
  19.  
  20. This program is an attempt to provide most of the
  21. functionality associated with this protocol.  Since the
  22. program is still in development, and does not hold all the
  23. features defined in the standards document for FTP, it may
  24. not be suitable for all purposes.  It is, however, suitable
  25. for a great many purposes that occur commonly amongst users
  26. of FTP programs.
  27.  
  28. This program has certain advantages over many of the
  29. commercial implementations.  The first, and most obvious, is
  30. its cost.  If you can accept certain limitations that I have
  31. placed on the software, the cost may be nothing, since you
  32. are not forced to send me money to use this software.  A
  33. registration fee of $15 is suggested, and the benefits of
  34. sending in your registration include:
  35.  
  36.          Automatic notification of any new versions
  37.          Lifting of all restrictions on the shareware
  38.           version (only five transfers per session, and
  39.           impolite greeting and farewell messages)
  40.          A warm, fuzzy feeling
  41.          The likelihood that I will be sufficiently
  42.           interested to produce a new version
  43.          More of a say in determining new features
  44.  
  45. Instructions on registering are included in the file
  46. REGISTER.TXT, as well as at the end of this file.
  47.  
  48. Other advantages over commercial implementations include
  49. that this program has been written from scratch to be
  50. compatible with the Winsock specification, rather than any
  51. particular implementation.  This gives it a greater chance
  52. of working with those winsock stacks that fully comply with
  53. the Winsock v1.1 specification.  The program has been
  54. written solely with Windows in mind, and is not a port of
  55. anyone else's implementation.  This allows it to be more
  56. efficient in the Windows environment.
  57.  
  58. Well, enough sales talk, and on with actually documenting
  59. this program.
  60.  
  61. Documentation begins here!
  62.  
  63. WFTPD can only be run on top of a winsock v1.1 compliant
  64. TCP/IP stack.  It has been used by many people on a variety
  65. of different stacks.  It seems to work very well on top of
  66. the shareware Trumpet Winsock available from most ftp sites
  67. and shareware archives as TWSK10A.ZIP.
  68.  
  69. If on starting WFTPD, you receive an error "Cannot Find
  70. WINSOCK.DLL", or a similar message to say that Windows
  71. cannot find the WFTPD executable, this is because a Winsock
  72. compliant stack has not been installed correctly on your
  73. system.
  74.  
  75. As a shareware application, WFTPD has no warranty, either
  76. express or implied, about its suitability for any purpose.
  77. Support is not guaranteed, nor are future updates.  The
  78. program is offered on an as-is basis to any users, and the
  79. author and distributors of this program are not liable for
  80. any damage or loss caused by the use, misuse, abuse or
  81. talking-moose of this program.  Similarly, the author and
  82. distributors are not liable for any damage or loss caused by
  83. any portion of this code or documentation, no matter how
  84. poorly written.
  85.  
  86. WFTPD is distributed through shareware archives as one
  87. executable, one help file, and a few ancillary files, of
  88. which this is one.  To run the program, all that is required
  89. is the executable, although you may wish to keep the help
  90. file around for those moments where you have forgotten what
  91. you read in this document.  The help file should be kept in
  92. the same directory as the executable.
  93.  
  94. As with so many other windows programs, WFTPD creates a file
  95. with the extension ".INI" in the windows directory.  (If you
  96. run the program as "WFTPD.EXE", the INI file will be
  97. "WFTPD.INI")  It is not necessary to edit anything in this
  98. file directly, since all operations are accessible from menu
  99. options.  It is advised that you NOT edit the INI file in
  100. normal operation, since there is a certain amount of
  101. validation of your input that is done when entering items
  102. through the menus.
  103.  
  104. The menu structure has been designed to be as intuitive as
  105. possible, while still providing the required functionality.
  106. The menus are outlined individually below:
  107.  
  108. File Menu
  109.  
  110. From this menu, all the file operations are performed, in
  111. addition to an option setting that I couldn't find any
  112. obvious place for.  The two file options are "Open Log" and
  113. "Close Log".  These options define whether any enabled
  114. logging information (q.v.) will be output to a file, and
  115. which file this information is output to.  Any currently
  116. open log file's name is displayed on the title bar of the
  117. application.  If the application is closed (exited) while a
  118. log file is open, that file will be reopened on re-starting
  119. the application.  If a log file already has any contents,
  120. the new logging messages will be appended.  For this reason,
  121. it is advisable to make a regular investigation of your log
  122. files to ensure that they have not grown too large.
  123.  
  124. The additional option on this menu is the "Greedy" option.
  125. Simply described, when this option is checked, transfers TO
  126. the system running WFTPD will run faster, but more of the
  127. Windows process time will be taken up.  Hence, this option
  128. should probably only be enabled on a machine that does not
  129. receive much interactive use of Windows.  If you intend to
  130. use Windows while WFTPD is running, I recommend you disable
  131. the Greedy option.  Currently there is no corresponding
  132. option for transfers FROM the system running WFTPD.
  133.  
  134. The final command on the File Menu is the Exit command,
  135. which closes down the program.  It is important on some
  136. Winsock stacks to close the program down BEFORE exiting
  137. Windows, since there is currently a bug that leaves a
  138. 'listener' process active for ftp, which means that should
  139. you re-enter windows without restarting your TCP/IP stack
  140. (often requiring a reboot), you will not be able to start
  141. ANY ftp servers, and incoming ftp requests will get lost.  I
  142. view this as a bug in my software, and also in the
  143. underlying TCP/IP implementation of the relevant Winsock
  144. stacks, since when Windows closes down, they should close
  145. down all TCP/IP connections that were activated under
  146. Windows.  A later version of WFTPD will fix this.
  147.  
  148. Edit Menu
  149.  
  150. The only option here, Copy, has been greyed out - this is
  151. reserved for future expansion, to allow you to copy parts of
  152. the on-screen log information to the clipboard.
  153.  
  154. View Menu
  155.  
  156. This has one option, "Status Bar".  This toggles the display
  157. of the status bar on the bottom line of the screen display,
  158. which will contain a on-line description of whatever command
  159. is currently highlighted on any menu.
  160.  
  161. Logging Menu
  162.  
  163. This is where decisions are made as to whether logging is
  164. performed, and what information is logged.  The first
  165. option, "Logging On", enables the logging of items checked
  166. below the separator, and provides a quick method of turning
  167. on or off all log information.  "Clear Screen" clears the
  168. window of all on-screen logging.  This is a non-reversable
  169. process.
  170.  
  171. Underneath the separator (the horizontal line) are the
  172. options describing what information gets logged.  "Gets"
  173. enables logging of any transfer FROM the WFTPD system.
  174. "Puts" enables logging of transfers in the other direction.
  175. "Logins" enables a log of every non-anonymous user who
  176. connects to your system, and "Anonymous" enables logging of
  177. the anonymous connections.  "Commands" enables logging of
  178. all other commands issued by connected FTP clients.
  179.  
  180. The last, and perhaps dangerous, option is "Winsock Calls".
  181. This is included mainly to aid in the isolation of faults
  182. between WFTPD and your Winsock stack.  Since the Winsock
  183. specification is relatively new, there are some areas where
  184. the writers of Winsock stacks may not have got it 'right',
  185. and some areas where they are not necessarily 'wrong', but
  186. disagree with the interpretation I make of the winsock spec.
  187. If you enable this option, every call to the Winsock stack
  188. will be logged, along with an error code.  An error code of
  189. 0 means no error, and on any "[signal]" line, the error
  190. number is the type of signal received.  The only other error
  191. number to be expected is 10035, which means that the
  192. transfer of data blocked - this is a normal condition for
  193. any network connection.  Any other error condition may need
  194. investigation.
  195.  
  196. Message Menu
  197.  
  198. This controls various messages that users see.  The first
  199. two items will put up dialogs to allow you to enter up to 20
  200. line messages to be displayed on entry into, and exit from,
  201. the WFTPD system.  In the unregistered shareware version,
  202. these dialogs come up, but may NOT be edited.  I apologise
  203. if the message seems rude to you, but please don't be a self-
  204. righteous ninny about it - I have had several people
  205. complain that they cannot reasonably test the program with
  206. these messages in.  I believe this argument is phoney - if
  207. you are testing the software, I would hope that $15 is a
  208. drop in the ocean compared to the cost of your (and your
  209. testers') time, and I would also hope that if you have other
  210. people connecting into your 'test' site, it should be no
  211. problem to inform them that this message is due to your
  212. testing an unregistered shareware product.
  213.  
  214. The third item on this menu, "MESSAGE.FTP" is a toggle that
  215. enables messages to be displayed on each change of
  216. directory.  If this option is enabled, and the user changes
  217. directory into one with a file called "MESSAGE.FTP", the
  218. text inside this file is sent to the user along with the
  219. notification of his new directory.  My advice is to keep
  220. this message brief, since many people have only twenty line
  221. terminals, and may not be able to pause, or scroll back.
  222.  
  223. Any text can appear in these files, and also in the Greeting
  224. and Farewell dialogs.  You do not need to prepend each line
  225. with any special text, as in some other ftp server
  226. implementations - the server handles this for you.
  227.  
  228. Security Menu
  229.  
  230. This implements a rather limited subset of the security
  231. available on more powerful ftp daemons.  Currently only two
  232. items are enabled - the third, greyed, item is reserved for
  233. the next version of WFTPD, and will allow you to specify
  234. which users can write from, read to, or list, which
  235. directories.
  236.  
  237. The first item, "User/Password", brings up the "User
  238. Security Settings" dialog.  It is on this dialog that users
  239. are defined.  To define a new user, simply enter the user's
  240. login name in the "User name" box; next, if you wish to, you
  241. may define a password and home directory for this user.
  242. When entering a password, the password must be typed exactly
  243. the same in both the Password and Verify boxes.  Since you
  244. cannot see what you are typing, the "Add/Alter" button is
  245. greyed out whenever the text in the two boxes does not
  246. exactly match.  The user's entry is only added to the INI
  247. file on pressing the Add/Alter button while that user's name
  248. is in the User Name box.  On pressing the Add/Alter button,
  249. the following settings are stored: User Name, Password, Home
  250. Directory, and the "Restrict To Home" option's value.
  251.  
  252. The "Restrict To Home" checkbox will, if checked, require
  253. that this user only be allowed access to his home directory
  254. and below.  All users will be placed in their Home Directory
  255. when they first log in.
  256.  
  257. The "Enable Security" check box, when checked, requires that
  258. each connection enters a valid user name and password, which
  259. must match those on file in the INI file.  If unchecked, a
  260. connection may enter any user name and password, and will be
  261. granted access to all your connected drives.
  262.  
  263. The "Allow Anonymous" check box enables, or disables the
  264. "anonymous" user.  This user name is synonymous with the
  265. "ftp" user name, for ease of typing, and is provided so that
  266. unprivileged access can be granted to your system.  Any
  267. connection may log in to the anonymous user, and may enter
  268. any text as the password.  WFTPD will suggest to each
  269. connection that they supply an email address as their
  270. password, and this value is logged if the "Anonymous" loggin
  271. option is enabled.  This provides a limited method of
  272. determining who has been logging into your system.
  273.  
  274. The "Enable Security" and "Allow Anonymous" check boxes will
  275. have their status saved when the "Close" button is clicked
  276. to close up the dialog.
  277.  
  278. The last button, "Delete" will remove the currently selected
  279. user name entry from your INI file.
  280.  
  281. The second item in the Security main menu is "Host/Net".
  282. This is a new feature to 1.9, and may be a trifle flakey as
  283. of yet.  The idea is to either allow you to deny access to
  284. particular sites which cause you problems, or to allow only
  285. particular sites to connect, and to deny all other sites
  286. from connecting.
  287.  
  288. The default setting is indicated in the "Default Action"
  289. box.  To specifically allow or deny a particular host or
  290. network, you may enter an IP address mask in the "Host
  291. Address" box.  This mask is a set of four values, separated
  292. by dots.  These values are either decimal numbers in the
  293. range 0-254, or asterisks.  An asterisk in any particular
  294. part will allow the address to match all values in that
  295. position.  For instance, if you wanted to flag all local
  296. connections through the "loopback" interface, you might
  297. enter "127.*.*.*" here.
  298.  
  299. When a connection is received, the default action is noted,
  300. and then the address of the incoming site is matched against
  301. those host address masks whose specific action goes against
  302. the default action.  If a match is found, then the specific
  303. action is performed, otherwise the default action is.
  304.  
  305. As with the User/Password screen, the setting for any "Host
  306. address" is only saved on clicking the Add/Alter button,
  307. which only becomes solid on entering a valid host mask.  The
  308. Delete button removes the entry for the host address
  309. displayed.  As might be expected, the Default Action is
  310. saved on closing the dialog box.
  311.  
  312. Help Menu
  313.  
  314. The Index option pulls up the help file for WFTPD (if it can
  315. be found), and points to the contents page.  This may be
  316. worth exploring for hints on how the software may be used.
  317.  
  318. The Using Help option gives you some Windows Help about
  319. using Windows Help.
  320.  
  321. The About option displays a short copyright message, and may
  322. be used to find out whether you are running a registered, or
  323. unregistered, version, which version you are running, and
  324. what date it was built on.  An additional button is
  325. displayed at the bottom of the About Dialog, which in the
  326. unregistered version asks "How Do I Register?", and in the
  327. registered version asks "How Do I Contact The Author?".  On
  328. pressing this button, the help file is again searched for,
  329. and the page on contacting the author, or registering the
  330. software, is displayed.
  331.  
  332. Registering the Software
  333.  
  334. What will registering the software get you?  A brand
  335. spanking new registered copy of the executable and all
  336. documentation (just in case you lost your documentation, or
  337. it was updated recently).  Also, the registered version has
  338. the following limits removed - a maximum of five file
  339. transfers per login session - no editing of the Greeting and
  340. Farewell messages allowed.
  341.  
  342. It will greatly aid in my records if all registrations are
  343. accompanied by the enclosed order form, which is in
  344. ORDER.DOC in WinWord 2.0 format, or in ORDER.TXT in simple
  345. ASCII text.  The registration fee is $15, and I accept only
  346. cheques and cash.  Be very careful if sending cash - the
  347. Postal Service has a reputation for pilfering, which does
  348. not seem to be totally undeserved considering the occasional
  349. empty envelope I receive.  Cheques are far safer, and should
  350. be made out to "Alun Jones".  There is no "WFTPD Software
  351. Inc", or any such name (although one day, who knows?).
  352.  
  353. If an internet-reachable e-mail address is included with
  354. your order, you will be added to a mailing list of all
  355. registered users of WFTPD, which will allow me to notify you
  356. of any future upgrades, or troubleshooting techniques and
  357. tips.  If you provide me with an internet e-mail address or
  358. an internet ftp site on which to deposit the registered copy
  359. (so long as it is not a public archive site!), you will be
  360. sent free upgrades whenever they are available.
  361.  
  362. Source code to the program is not distributed with the
  363. registered or unregistered version of this software - it
  364. cost me a lot of time to develop this program, and so it
  365. costs mucho dinero to get the source code out of me.
  366.  
  367. Site licences are generally offered at a rate of $500 for
  368. each block of 100 users.  If this is not suited to your
  369. situation, make me an offer and we can haggle.  Be warned
  370. that my haggling may consist of repeatedly droning "$500 for
  371. each block of 100 users".  But be hopeful that I may decide
  372. your offer is good.
  373.  
  374. I would prefer if all payments are made in US Dollars.
  375. These are easy for me to cash, and are often reasonably easy
  376. for foreigners to lay their hands on.  In a pinch, I will
  377. accept European currency cheques, so long as the amount
  378. includes a certain increase to allow for the money-changers
  379. to have their rake.  For instance, I have been asking people
  380. in England to send me 15 pounds sterling.
  381.  
  382. Finally
  383.  
  384. And finally, may I remind you that the address for all
  385. communication to me is Alun Jones, 1910 Westmead 3702,
  386. Houston TX 77077 USA.  The previously quoted address of
  387. 12919 Whittington 1104A is my old address.  All mail to
  388. that address should be forwarded to my new address, but it
  389. is probably not wise to trust in that too much.
  390.  
  391. I would like to thank a whole bunch of people who have
  392. helped me with this product, particularly:
  393.  
  394. Fred Whiteside, of Beame & Whiteside, without whom I would
  395. have screwed up the User/Password security.
  396. Bob Quinn, of FTP Software Inc, for clarifying many of the
  397. points of the Winsock spec, and for generally being very
  398. informative on the Winsock programming mailing lists.
  399. All the staff of FTP Software Inc, for sending me a
  400. developer's edition of PC/TCP version 2.3, which I have
  401. regrettably not yet had the time to install.
  402. Peter Tattam, of Trumpet Software International, for
  403. developing perhaps the definitive shareware winsock
  404. implementation.
  405. All the developers of winsock stacks, without whom my
  406. program would be useless.
  407. All the writers of the winsock v1.1 specification, for
  408. providing a most useful and simple environment for
  409. programming TCP/IP network applications.
  410. Anyone who has ever given me encouragement and constructive
  411. criticism concerning WFTPD, in particular those who wrapped
  412. their comments in cheques.
  413. My mother, my father and the entire academy of motion
  414. picture arts (sorry, couldn't resist that - this was written
  415. on the night after the Oscars)
  416. _______________________________
  417. 1The term "Daemon" refers to an invisible servants - unlike
  418. "demons", a daemon is neither intrinsically good nor evil,
  419. it does only what it is told.
  420.